home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / djgpp / src / binutils.252 / gas / symbols.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-09-23  |  3.1 KB  |  83 lines

  1. /* symbols.h -
  2.    Copyright (C) 1987, 1990, 1992, 1993, 1994 Free Software Foundation, Inc.
  3.  
  4.    This file is part of GAS, the GNU Assembler.
  5.  
  6.    GAS is free software; you can redistribute it and/or modify
  7.    it under the terms of the GNU General Public License as published by
  8.    the Free Software Foundation; either version 2, or (at your option)
  9.    any later version.
  10.  
  11.    GAS is distributed in the hope that it will be useful,
  12.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14.    GNU General Public License for more details.
  15.  
  16.    You should have received a copy of the GNU General Public License
  17.    along with GAS; see the file COPYING.  If not, write to
  18.    the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  19.  
  20. extern struct obstack notes;    /* eg FixS live here. */
  21.  
  22. extern struct obstack cond_obstack;    /* this is where we track .ifdef/.endif
  23.                        (if we do that at all).  */
  24.  
  25. extern symbolS *symbol_rootP;    /* all the symbol nodes */
  26. extern symbolS *symbol_lastP;    /* last struct symbol we made, or NULL */
  27.  
  28. extern symbolS abs_symbol;
  29.  
  30. extern int symbol_table_frozen;
  31.  
  32. char *decode_local_label_name PARAMS ((char *s));
  33. symbolS *symbol_find PARAMS ((CONST char *name));
  34. symbolS *symbol_find_base PARAMS ((CONST char *name, int strip_underscore));
  35. symbolS *symbol_find_or_make PARAMS ((char *name));
  36. symbolS *symbol_make PARAMS ((CONST char *name));
  37. symbolS *symbol_new PARAMS ((CONST char *name, segT segment, valueT value,
  38.                  fragS * frag));
  39. symbolS *symbol_create PARAMS ((CONST char *name, segT segment, valueT value,
  40.                 fragS * frag));
  41. void colon PARAMS ((char *sym_name));
  42. void local_colon PARAMS ((int n));
  43. void symbol_begin PARAMS ((void));
  44. void symbol_table_insert PARAMS ((symbolS * symbolP));
  45. void resolve_symbol_value PARAMS ((symbolS *));
  46.  
  47. #ifdef LOCAL_LABELS_DOLLAR
  48. int dollar_label_defined PARAMS ((long l));
  49. void dollar_label_clear PARAMS ((void));
  50. void define_dollar_label PARAMS ((long l));
  51. char *dollar_label_name PARAMS ((long l, int augend));
  52. #endif /* LOCAL_LABELS_DOLLAR */
  53.  
  54. #ifdef LOCAL_LABELS_FB
  55. void fb_label_instance_inc PARAMS ((long label));
  56. char *fb_label_name PARAMS ((long n, long augend));
  57. #endif /* LOCAL_LABELS_FB */
  58.  
  59. extern void copy_symbol_attributes PARAMS ((symbolS *, symbolS *));
  60.  
  61. /* Get and set the values of symbols.  These used to be macros.  */
  62. extern valueT S_GET_VALUE PARAMS ((symbolS *));
  63. extern void S_SET_VALUE PARAMS ((symbolS *, valueT));
  64.  
  65. #ifdef BFD_ASSEMBLER
  66. extern int S_IS_EXTERNAL PARAMS ((symbolS *));
  67. extern int S_IS_COMMON PARAMS ((symbolS *));
  68. extern int S_IS_DEFINED PARAMS ((symbolS *));
  69. extern int S_IS_DEBUG PARAMS ((symbolS *));
  70. extern int S_IS_LOCAL PARAMS ((symbolS *));
  71. extern int S_IS_EXTERN PARAMS ((symbolS *));
  72. extern int S_IS_STABD PARAMS ((symbolS *));
  73. extern CONST char *S_GET_NAME PARAMS ((symbolS *));
  74. extern segT S_GET_SEGMENT PARAMS ((symbolS *));
  75. extern void S_SET_SEGMENT PARAMS ((symbolS *, segT));
  76. extern void S_SET_EXTERNAL PARAMS ((symbolS *));
  77. extern void S_SET_NAME PARAMS ((symbolS *, char *));
  78. extern void S_CLEAR_EXTERNAL PARAMS ((symbolS *));
  79. extern void S_SET_WEAK PARAMS ((symbolS *));
  80. #endif
  81.  
  82. /* end of symbols.h */
  83.